<template>
    <div>
        <router-link
                class="header-abs"
                tag="div"
                to="/"
                v-show="showAbs"
        >
            <div class="iconfont header-abs-icon">&#xe624;</div>
        </router-link>
        <div
            class="header-fixed"
            v-show="!showAbs"
            :style="opacityStyle"
        >
            <div class="iconfont header-fixed-back">&#xe624;</div>
            景点详情
        </div>
    </div>
</template>

<script>
    export default {
        name: "Header",
        data (){
            return {
                showAbs: true,
                opacityStyle:{
                    opacity: 0,
                },
            }
        },
        methods: {
            handleScroll(){
                const top = document.documentElement.scrollTop;
                if(top > 60){
                    let opacity = top / 140;
                    opacity = opacity > 1 ? 1 : opacity;
                    this.opacityStyle = {
                        opacity
                    };
                    this.showAbs = false;
                } else {
                    this.showAbs = true;
                }
            }
        },
        activated (){
            window.addEventListener('scroll', this.handleScroll)
        },
        deactivated (){
            window.removeEventListener('scroll', this.handleScroll)
        },
    }
</script>

<style lang="stylus" scoped>
    @import "~@/assets/vavibles.styl"
    .header-abs
        position absolute
        left .2rem
        top .2rem
        width .8rem
        height .8rem
        line-height .8rem
        background rgba(0,0,0,.8)
        text-align center
        border-radius .4rem
        .header-abs-icon
            color: #fff
            font-size .4rem
    .header-fixed
        height $headerHeight
        line-height $headerHeight
        text-align center
        color #fff
        font-size .32rem
        background $bgColor
        z-index 9
        position fixed
        top 0
        left 0
        right 0
        .header-fixed-back
            position absolute
            top 0
            left 0
            text-align center
            width .64rem
            color #fff
            font-size .4rem
</style>
